// TiempoEspera = Tiempo en que el sistema espera que el usuario realice alguna accion (en milisegundos)
var ut_contador = 0;
var ut_mostrarTiempoEnPantalla = false;
var ut_tiempoIntermitenciaMonitoreoSesion = 300 * 1000; // segundos * 1000 (en milisegundos). Monitorea cada 5 min.
var ut_usarValidarSesion = true;

//----------------------------------------------------------------------------------------
//Descripcion : monitorea el comportamiento de la ventana
//Por         : VSR, 01/01/2011
function monitorearVentana(){
  var monitor = document.getElementById("monitor");
  var to = document.getElementById("ctl00_to");
  var TiempoEspera = parseInt(to.value/2);
  var ut_contadorStatus = TiempoEspera - ut_contador;
  ut_contador ++;

  //muestra en la barra de status el tiempo restante de direccionamiento
  if(ut_mostrarTiempoEnPantalla){
    //window.status = "Tiempo restante para redireccionar al login: " + ut_contadorStatus;
    monitor.style.display = "block";
    monitor.innerHTML = "Tiempo restante para redireccionar al login: " + ut_contadorStatus + " seg.";
  }
  else{
    monitor.style.display = "none";
  }

  //si han transcurrido mas del tiempo de espera de inactividad entonces pregunta si desea mas tiempo
  if (ut_contador > TiempoEspera){
      top.location.href = "index.php?page=Logout";
  }
  else
  {
    //cada 1 segundo monitorea si el usuario ha realizado algo(mover el mouse, hacer click o presionar una tecla)
    id = window.setTimeout("monitorearVentana()",1000);
  }
}

//----------------------------------------------------------------------------------------
//Descripcion : vuelva el ut_contador del tiempo a cero
//Por         : VSR, 01/01/2011
function limpiarTiempo(){
  //cada vez que el usuario mueva el puntero del mouse, haga un click sobre cualquier
  //parte de la pagina o presione una tecla, el ut_contador del tiempo vuelve a 0
  ut_contador = 0;
}

//------------------------------------------------------------------------------------
//Descripcion : valida si existe la sesion del usuario
//Por         : VSR, 01/01/2011
function validarSesion(){
  if(ut_usarValidarSesion){
    var queryString = "page=Usuario.HttpAjax";

    //invoca al metodo de Ajax de la libreria prototype.js
    var okFunc = function(t){
      var respuesta = jQuery.trim(t);
      if(respuesta==CONST_CODIGO_SIN_SESION){
        alert("Su sesión a finalizado.\nEsta pantalla se cerrará de forma automática y tendrá que ingresar nuevamente al sistema.");
        top.location.href = "index.php?page=Logout";
      }
      else{
        //vuelve a monitear la sesion despues de X segundos
        id = window.setTimeout("validarSesion()",ut_tiempoIntermitenciaMonitoreoSesion);
      }
    }
    jQuery.ajax({
        url: "index.php",
        type: "get",
        async: true,
        data: queryString,
        success: okFunc
    });
  }
}

//------------------------------------------------------------------------------------
//Descripcion : valida si contiene algun texto que indique que finalizo la sesion
//Por         : VSR, 01/01/2011
function contieneTextoTerminoSesion(texto){
  if(InStr(texto,"!DOCTYPE")> 0){
    return true;
  }
  else{
    return false;
  }
}

//------------------------------------------------------------------------------------
//Descripcion : redireccionar al login
//Por         : VSR, 01/01/2011
function redireccionarLogin(){
  alert("Su sesión a finalizado.\nEsta pantalla se cerrará de forma automática y tendrá que ingresar nuevamente al sistema.");
  top.location.href = "index.php?page=Logout";
}